// 开启express服务器

const express = require('express');

let app = express();

// app.get('/list', (req, res) => {
//     try {
//         let obj = { name: '张三' };
//         let cname = obj.child.name; // Cannot read property 'name' of undefined
//         res.send('ok');
//     } catch (err) {
//         res.status(500);
//         res.send({ code: 500, msg: '您请求的接口出错了', err: err });
//     }
// })

app.get('/list', (req, res) => {
    let obj = { name: '张三' };
    let cname = obj.child.name; // Cannot read property 'name' of undefined
    res.send('ok');
})

app.get('/login', (req, res) => {
    let { uname, upwd } = req.body;
    if (uname === 'admin' && upwd === "123456") {
        let obj = { name: '张三' };
        let cname = obj.child.name; // Cannot read property 'name' of undefined
        res.send('ok');
    } else {
        res.send({ code: 402, msg: '用户名或者密码错误' })
    }
})

// 注册错误异常捕获中间件统一处理
// 注意：错误中间件要写到所有的其他中间件和响应处理函数的之后，通常情况下是找到app.listen() 关键字前面注册错误中间件才有用
// 错误中间件是最后一个
app.use((err, req, res, next) => {
    console.log(err.stack);  // 错误栈
    console.log('错误中间件调用了');
    res.status(500).send({ code: 500, msg: '您请求的接口出错了', err: err.message });
})

app.listen(8009, () => {
    console.log('8009');
})